package com.sinosoft.jwjw.component.service.system;

import com.sinosoft.jwjw.base.BaseCrudService;
import com.sinosoft.jwjw.component.model.system.SMenu;
import com.sinosoft.jwjw.component.model.system.SUser;
import com.sinosoft.jwjw.utils.ResultDetail;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

public interface SUserService extends BaseCrudService<SUser,String> {

    /**
     * 重置密码
     * @param id
     * @return
     */
    public ResultDetail resetpwd(String id);

    /**
     * 设置用户有效无效
     * @param id
     * @param isState
     * @return
     */
    public ResultDetail setIsState(String id , String isState);


    /**
     * 登录
     * @param loginName
     * @param loginPassword
     * @return
     */
    public ResultDetail checkLogin(String loginName , String loginPassword);




    /**
     * 获取缓存用户信息
     * @return  正常返回SUser对象。若返回null，则
     */
    public SUser getCacheUser(HttpServletRequest request);


    /**
     * 获取缓存用户菜单信息
     * @param request
     * @return
     */
    public List<SMenu> getCacheUserMenu(HttpServletRequest request);


    /**
     * 操作时刷新缓存信息
     * @param request
     * @return
     */
    public boolean refreshCache(HttpServletRequest request);
}
